package com.io.node;

import org.junit.Test;

import java.io.*;

public class Copy {
    public static void main(String[] args) {
        System.out.println("使用BufferedReader 和 BufferedWriter 复制拷贝文件");
    }

    @Test
    public void testCopy() throws IOException {
        // 把文件 a.java 复制为 b.java
        // 记住：不能操作二进制文件，只能操作文本 ~ 字符流
        String filePath = "E:\\a.java";
        String targetPath = "E:\\a2.java";
        // 创建缓冲对象
        BufferedReader bufferedReader = new BufferedReader(new FileReader(filePath));
        BufferedWriter bufferedWriter = new BufferedWriter(new FileWriter(targetPath));
        // 一边读一边复制内容（边读边写）
        String s;
        while ((s = bufferedReader.readLine()) != null) {
            // 写入文件
            bufferedWriter.write(s);
            // 换行
            bufferedWriter.newLine();
        }
        // 关闭资源流
        bufferedReader.close();
        bufferedWriter.close();
        System.out.println("文件拷贝结束~");
    }
}
